Path Flow Formulation for Fast Reroute Bypass Tunnels in MPLS Networks

ABSTRACT

A path-flow formulation of defining MPLS FRR bypass LSPs is presented. The path-flow formulation comprises first identifying a set of candidate bypass LSPs, each of which meets various network constraints and has an explicit route around a network facility to be protected. The constraints may include Quality of Service (QoS) guarantees, implementation requirements, network element resource limitations, and resiliency requirements. The constraints may be user-selected, and may be non-linear. The set of candidate bypass LSPs form a linear programming (LP) problem, or an integer linear programming (ILP) problem if the allowable number of bypass LSPs is constrained. In an optimization step, LP solutions are used to select the bypass LSPs from among the candidate bypass LSPs by allocating bandwidth to them.

This application claims priority to U.S. Provisional Application Ser.No. 60/807,707, filed Jul. 18, 2006, and incorporated herein byreference in its entirety.

FIELD OF THE INVENTION

The present invention relates generally to network traffic engineering,and in particular to a path-flow formulation for defining Fast Reroute(FRR) bypass paths in Multi-Protocol Label Switching (MPLS) enabled IPnetworks.

BACKGROUND

Multi-Protocol Label Switching (MPLS) is a data-carrying mechanism andprotocol for packet-switched networks, such as Internet Protocol (IP)networks. MPLS encapsulates IP packets and attaches an MPLS headerincluding a label stack. MPLS-labeled packets are routed through anetwork along logical Label Switched Paths (LSPs) by performing a LabelLookup/Switch at routing nodes instead of a lookup into the IP table. AnLSP is a logical entity that defines a unidirectional traffic flowbetween two network endpoints, and may include numerous otherattributes, such as bandwidth requirements, one or more explicit routes,and the like. When an LSP does not include an explicit route, the actualroute of traffic between the endpoints is determined dynamically byLabel Switching Routers. Many independent LSPs may be routed through asingle network node or link. MPLS supports multiple service models, andprovides advantageous traffic management tools.

Fast Reroute (FRR)—also known in the art as MPLS local protection—is anetwork resiliency mechanism that protects network facilities, such aslinks and nodes, by defining one or more bypass or backup LSPs to carrytraffic around each facility (parallel bypass LSPs protecting the samefacility are called a bypass bundle). In the event of a network failure,traffic is directed onto a backup LSP beginning at a Point of LocalRepair (PLR), bypassing the failure and merging with the primary LSP ata Merge Point (MP). FRR provides faster recovery than, e.g., recoverymechanisms at the IP layer (which may take several seconds), because thedecision of recovery is strictly local. FRR targets to reroute trafficwithin 50 ms upon failure.

FRR relies on the RSVP traffic engineering (RSVP-TE) protocol, wherebyeach LSP traversing a link reserves sufficient bandwidth, or linkcapacity, for its traffic. Link bandwidth not reserved for primary LSPs,referred to herein as spare link capacity or protection bandwidth, isavailable for FRR and allows bypass LSPs to be routed along the link.Defining bypass LSPs along links having sufficient spare link capacityto carry the traffic of a protected facility, while complying withnumerous system constraints to minimize the impact of a failure on MPLSoperation, stands as the central problem in FRR design andimplementation.

The design of FRR bypass LSPs using an arc-flow formulation is known inthe art. In an arc-flow formulation, each link, or network arc, isassigned a decision variable having a binary, integer value (i.e., 0or 1) indicating whether it is included in a bypass LSP or not. Thearc-flow formulation first finds the spare link capacity using a mixedinteger linear programming (MILP) model, and then derives routes for thebypass LSPs based on the discovered spare link capacity. This process iscomputationally complex, and is limited in its ability to accommodateother network constraints in formulating the bypass LSPs.

SUMMARY

In one or more embodiments of the present invention, a path-flowformulation of defining MPLS FRR bypass LSPs is presented. Broadlydescribed, the path-flow formulation comprises first identifying a setof candidate bypass LSPs, each of which meets various networkconstraints and has an explicit route around a network facility to beprotected. The constraints may include Quality of Service (QoS)guarantees, implementation requirements, network element resourcelimitations, and resiliency requirements. The constraints may beuser-selected, and may be non-linear. The set of candidate bypass LSPsform a linear programming (LP) problem, or an integer linear programming(ILP) problem if the allowable number of bypass LSPs is constrained. Inan optimization step, LP solutions are used to select the bypass LSPsfrom among the candidate bypass LSPs by allocating bandwidth to them. Inone embodiment, the spare subscribed bandwidth is reduced by sharingspare link subscribed bandwidth on a given link among different bypassbundles, under the assumption of only single-point network failures.

One embodiment relates to a method of defining FRR bypass tunnels on aMPLS network using a path-flow formulation. A network facility toprotect is specified. A plurality of candidate bypass Label-SwitchedPaths (LSP) that satisfy predetermined path and bandwidth constraintsand have explicit routes, to carry traffic flows in the event of afailure of a protected facility, are computed. Then, one or more bypassLSPs are selected from among the candidate bypass LSPs by allocatingprotection bandwidth to the bypass LSPs.

Another embodiment relates to a computer readable medium including oneor more computer programs operative to cause a computer to define FRRbypass LSPs for a MPLS network using a path-flow formulation. Thecomputer programs are operative to cause the computer to perform thesteps of receiving network topology information; receivingidentification of a network facility to protect; receiving predeterminedpath and bandwidth constraints; computing a plurality of candidatebypass LSPs that satisfy the predetermined path and bandwidthconstraints and have explicit routes, to carry traffic flows in theevent of a failure of a protected facility; selecting from among thecandidate bypass LSPs one or more bypass LSPs by allocating protectionbandwidth to the bypass LSPs; and outputting the bypass LSPs.

Yet another embodiment relates to a method of minimizing the link sparesubscription of a network link in a MPLS network implementing FRR toprotect a node. One or more bypass LSPs are defined to carry trafficaround the node in the event of a node failure, the backup LSPstraversing the link. If the link contains at least two bypass LSP andthe bypass LSPs share one or more links in the network routes theyprotect, the aggregate protection bandwidth of the bypass LSPs isreduced such that each bypass LSP protects the bottleneck bandwidthalong its protected route and such that the combined bandwidth of eachbypass LSP that shares a protected route link is less than or equal tothe minimum RSVP bandwidth of the shared link.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram representing bandwidth allocation in arepresentative MPLS network link.

FIG. 2 is a flow diagram of a path-flow method of defining FRR bypassLSPs.

FIG. 3 is a network diagram.

FIG. 4 is a network diagram demonstrating shared link spare subscribedbandwidth.

DETAILED DESCRIPTION

According to embodiments disclosed and claimed herein, FRR bypass LSPsare defined and optimized using a path-flow formulation. Thecharacterization of network optimization problems as arc-flow orpath-flow is defined in Ravindra K. Ahuja, et al., Network Flows—Theory,Algorithms, and Applications § 3.5 (1993), incorporated herein byreference. In the path-flow formulation, the PLR/MP pairs protecting anetwork facility are defined and tested against various networkconstraints to generate a set of candidate bypass LSPs, each of whichmeets the constraints and has an explicit route. In a subsequentoptimization step, formulated as a linear programming (LP) or integerlinear programming (ILP) problem, the final bypass LSPs are selected byallocating bandwidth to them.

The path-flow formulation provides the significant advantage thatnumerous, user-selectable, non-linear network constraints may be appliedat the first step—defining the candidate bypass LSPs—making the processmore amenable to real-world FRR design problems. Indeed, many of theseconstraints cannot be accommodated at all in the prior art, arc-flowformulation of the FRR design problem. The two-step, path-flowformulation of first applying constraints and then optimizing theselection of routed LSPs meeting the constraints, is lesscomputationally complex than arc-flow formulations for a given networkcomplexity, providing for a faster solution and enabling iterativeformulations considering different network constraints.

Constraints and Optimizations

FRR bypass LSPs defined according to the path-flow formulation of thepresent invention achieve desired optimization objectives while stillmaintaining a certain network survivability level and a set ofconstraints on: Quality of Service (QoS) guarantees of traffic flows;implementation requirements of FRR bypass LSPs; resource limitations ofnetwork elements such as links, ports or routers; and resiliencyrequirements such as the facility to be protected, bandwidth pools to beprotected, and shared risk groups to be considered for diversity.

Representative optimization objectives are to minimize the maximumsubscription of the link residual bandwidth; to minimize the totalsubscribed link spare bandwidth; or to maximize the minimum linkresidual bandwidth.

The facility protection goal can be a perfect survivability level thatachieves complete (100%) bandwidth protection. This can be representedas a bandwidth protection constraint in the LP. In the case that 100%bandwidth protection cannot be achieved, the bandwidth protectionconstraint may be relaxed and used as a part of the objective functionto maximize the bandwidth protection percentage.

Constraints that may be applied to the path-flow FRR design include QoSguarantees of the working LSPs, requirements of bypass LSPs, resourcelimitations on network elements, and resiliency requirements.

QoS guarantees of working LSPs include the hop constraint of the routeof each individual LSP, the hop increase constraint of the route of eachindividual LSP, the delay constraint of the route of each individualLSP, and the delay increase constraint of the route of each individualLSP.

Bypass LSP requirements include the diversity constraint of the route ofeach bypass LSP to be disjoint of its protected facility, the minimumbandwidth constraint of each bypass LSP, the maximum bandwidthconstraint of each bypass LSP, and the maximum number of parallel bypassLSPs that belongs to the same bypass LSP bundle and protect the samefacility.

Resource Limitations on network elements include the link spare capacitythat could be used for any bypass LSPs (this is frequently the linkphysical bandwidth minus the RSVP maximum reservable bandwidth), MPLScapability on various routers and interfaces, RSVP capability on variousrouters and interfaces, IP Routing capabilities on various routers andinterfaces, and resource bits colored on each interface of a link forMPLS Traffic Engineering purposes.

Resiliency requirements include the set of facilities to be protectedusing FRR bypass LSPs (and additionally, which bandwidth pools of thefacility to protect), any Shared Risk Group definition that could impactthe diversity constraint between the bypass LSPs and their protectedfacility, and using provided Shared Risk Groups to expand the directroute into a set of taboo links that the bypass LSPs should not use.

In one or more embodiments, existing bypass LSPs are inspected andvalidated against the same constraints applied in defining the candidatebypass LSPs. Limited maintenance is performed on existing bypass LSPsthat violate these constraints. The repaired, existing bypass LSPs thenjoin the set of candidate bypass LSPs in an optimization process thatselects the best set of bypass LSPs by allocating bandwidth to them.These steps may be performed in sequence or separately.

Bandwidth Protection

FIG. 1 presents one view of bandwidth allocation in a representativeMPLS network link. The link capacity is the physical bandwidth of thelink, which may be expressed as, e.g., a data rate. Primary LSPs 1-3(also known as working LSPs) reserve different amounts of bandwidth fortheir respective traffic flows via the RSVP mechanism (also known in theart as subscribing bandwidth). The amount of bandwidth actually reserved(subscribed) on a link is the link load. A link RSVP maximum reservablebandwidth, or RSVP maximum, may be defined, setting an upper limit onthe link load (when the link load equals the RSVP maximum, the link issaid to be fully subscribed). The link residual capacity, also known asthe link spare capacity or protection bandwidth, is the link capacityminus the link RSVP maximum reservable bandwidth. Some or all of theresidual capacity may be subscribed by bypass LSPs, such as bypass LSPs4 and 5. This is known as the link spare subscription. An importantoptimization, considered in greater detail below, is that, under theplausible assumption that only one network facility will fail at a time,different bypass LSPs protecting different facilities may share the linkspare subscription on a given link.

The backup bandwidth is the required bandwidth to be subscribed on thelink spare subscription along the route of a bypass LSP. The backupbandwidth for a bypass bundle is the sum of the backup bandwidth of thebypass LSPs in the bypass bundle. To achieve full protection, this valueshould be equal to or larger than the total subscribed bandwidth of theprimary LSPs over or through a protected network facility. Withoutknowledge of the primary LSPs, the required bypass bundle backupbandwidth must be estimated from the bottleneck capacity or link load onthe protected route. Accordingly, the decision of backup bandwidth forbypass LSPs is critical to design and deploy FRR bypass LSPs.

Bandwidth protection is an approach to designing and deploying FRR thatuses the RSVP maximum reservable bandwidth as the bandwidth to beprotected by FRR bypass LSPs. Neither the primary LSP routes nor thelink load need be known, since the whole link RSVP bandwidth isprotected by the bypass LSPs. The backup bandwidth of a bypass bundlemust be estimated by the maximum possible primary subscribed bandwidthalong the protected route. A conservative upper bound is the minimumlink RSVP bandwidth on the protected route. The bandwidth protectionapproach thus attempts to protect link RSVP bandwidth without knowingwhere the primary LSPs are routed. With this approach, the FRRprotection is not sensitive to changes in the routing of the workingLSPs. This allows the FRR planning timescale to be much greater than thetimescale for traffic engineering of the working LSPs.

FIG. 2 depicts a method 200 for creating FRR bypass LSPs using apath-flow formulation of the bandwidth protection approach. Based on theassumption that no more than one facility will fail at the same time,the FRR design problem can be partitioned into multiple independentsub-problems, each for a single facility. This significantly simplifiesthe computational tasks without loss of the solution quality.Accordingly, the first step is to determine all of the networkfacilities (i.e., links or nodes) to be protected (block 202).

For each network facility to be protected, the routers that may serve asa Point of Local Repair (PLR) and Merge Point (MP) of the facility aredetermined (block 204). For each PLR/MP pair, its protected routebandwidth and bottleneck RSVP bandwidth are determined (block 206). Abypass bundle comprising one or more candidate bypass LSPs is createdfrom the PLR to the MP, in accordance with a variety of user-suppliednetwork constraints (block 208). The protected route is associated withthe bypass bundle (block 210). Backup bandwidth is assigned to thebypass bundle, based on the bottleneck bandwidth above (block 212). Thebypass bundle is then associated with the PLR interface (block 214). Ifanother PLR/MP pair exists for the protected facility (block 216), thenext PLR/MP pair is selected (block 218), and a new set of candidatebypass LSPs are defined (blocks 206-214).

When all candidate bypass LSPs for a given facility have been defined(i.e., there are no remaining PLR/MP pairs for the facility) (block216), the actual bypass LSPs are determined by allocating backupbandwidth on the residual network of the facility (block 220). That is,a candidate bypass LSP that is allocated bandwidth is a valid bypassLSP; a candidate bypass LSP that is allocated no bandwidth iseffectively not selected as a valid bypass LSP. This optimizationrequires solving a multi-commodity flow problem, which may becharacterized as a linear programming (LP) problem. If the number ofbypass LSPs is constrained to a specific integer value, the problem maybe characterized as an integer linear programming (ILP) problem. Avariety of tools for solving LP/ILP programs are known in the art, forexample, the open-source software package lp_solve.

Note that blocks 206-214 in FIG. 2, iterated over all PLR/MP pairs for afacility, together specify the initial path-flow formulation step ofdetermining a set of candidate bypass LSPs for a given network facilityto be protected. Block 220 specifies a subsequent path-flow formulationstep of selecting one or more of the candidate bypass LSPs to serve asactual bypass LSPs by allocating bandwidth to them. This path-flowformulation of the FRR design problem differs significantly from thearc-flow formulations of the prior art.

As discussed above, the total bandwidth of the bypass LSPs for aprotected facility is at least the bottleneck RSVP bandwidth of theirprotected route. Multiple bypass LSPs can provide load-balancing.However, they also introduce a packing problem: the primary LSPs need todecide which bypass LSP they should select. This packing problem is notconsidered in the planning of bypass LSPs, but rather is an operationalproblem solved inline by Label Switched Routers at the time of afailure.

Path-Flow Formulation

The following notation is used to present a representative embodiment ofpath-flow formulation of the bandwidth protection approach to FRRdesign:

The network is represented by a directed graph G(N,E).

A node iεN denotes a router and an arc l=(i, j)εE denotes one directionof a link, where i and j are the head-end and tail-end router,respectively.

The link capacity is u_(l). The RSVP maximum reservable bandwidth isc_(l). The residual capacity is r_(l)=u_(l)−c_(l).

A set of facility F are given. The element fεF can be either a link lεEor a node iεN. Since the problem can be partitioned for individualfacilities, index f is omitted in the formulations without anyconfusion.

A link facility has two end routers and two bypass bundles. Each bypassbundle protects one direction of the link. A node facility has multipleadjacent routers as its PLRs and MPs. They can construct a set of fullmeshed bypass bundles.

The number of the adjacent routers d for a link facility is 2.

For a node facility, d is equal to the degree of this node.

The set of protected routes is K with its size |K|=d*(d−1).

Each protected route is indicated by p_(l) ^(k):1 means link l is usedin the protected route, 0 otherwise.

For a protected route k, its protected subscription is b_(k). In thebandwidth protection approach, this value is not known. However, thebottleneck RSVP bandwidth b*_(k) can be pre-calculated and substitutedfor b_(k).

The bypass bundles are indexed by the same k used in their protectedroutes. The one-to-one relationship between a bypass bundle and itsprotected route avoids any confusion.

A bypass bundle k has one or more bypass LSPs to protect the bottleneckRSVP bandwidth b_(k).

The link residual capacity subscribed by bypass bundles is s_(l), lεE,o≦s_(l)≦r_(l).

On edge l=(i, j)εE, the bypass bundle k subscribes a bandwidth of x_(l)^(k)=x_((i,j)) ^(k),x_(l) ^(k)≧0.

For a protected route k,kεK the links l,lεE used by this direct routeare denoted as p_(kl)=1, while the links not used by it have p_(kl)=0.

A set of Shared Risk Groups (SRGs) is R; whether the group rεR containslink l is indicated by g_(rl)=1, or g_(rl)=0 otherwise. A bypass LSPshould not use any taboo links that belong to any SRGs that influenceits protected route.

A set of taboo links is indicated by t_(kl) where t_(kl)=1 for any taboolink l, and t_(kl)=0 otherwise. Equation (1) is used to precomputet_(kl) where the summation operation uses the binary operator 1+1=1,rather than decimal addition:

$\begin{matrix}{{t_{kl} = {\sum\limits_{r \in R}{g_{rl}{\sum\limits_{j \in E}\left( {g_{rj}p_{kj}} \right)}}}},{\forall{l \in E}},{\forall{k \in K}}} & (1)\end{matrix}$

Let M be an arbitrary large number that is bigger than the maximum linkcapacity. For a bypass bundle k, let o(k) and d(k) be its PLR and MProuters.

The path-flow formulation uses decision variables to choose a solutionout of a set of pre-computed paths (i.e., candidate LSPs that meetpredetermined constraints and have explicit routes).

Let Q_(k) be the number of candidate paths for a bypass bundle k.

Let δ_(ql) ^(k) equal to 1 if the q-th path in the candidate path set ofbypass bundles k uses link l, or 0 otherwise.

Let z_(p) ^(k) be the subscribed bandwidth on the q-th path of bypassbundle k. This is the decision variable in the LP or ILP problemformulation. By allocating bandwidth to selected ones of the candidatebypass LSPs, the optimization phase (LP/ILP problem solution)effectively selects bypass LSPs from among the candidate bypass LSPs.That is, a candidate bypass LSP allocated no bandwidth is not selectedand will not be a bypass LSP.

The optimization formulation is:

$\begin{matrix}{\min {\sum\limits_{i \in L}s_{t}}} & (2) \\{{{s.t.\mspace{14mu} s_{t}} \leq {\alpha \; r_{t}}},{\forall{l \in E}}} & (3)\end{matrix}$

The objective (2) minimizes with a total link spare subscription. Theconstraint (3) limits the total spare subscription below a presetsubscription value a on the link residual capacity.

$\begin{matrix}{{s_{t} = {\sum\limits_{k = 1}^{K}{\sum\limits_{q = 1}^{Q}{\delta_{ql}^{k}z_{q}^{k}}}}},{\forall{l \in E}}} & (4)\end{matrix}$

The constraint (4) computes the aggregated link spare subscription fromits contained bypass LSPs. However, for the node protection approachthis is a conservative upper bound. A tighter bound on the aggregatedlink spare subscription in the node protection case is computed througha more complex set of equations described later.

$\begin{matrix}{{{\sum\limits_{q = 1}^{Q}z_{q}^{k}} = b_{k}},{\forall k},{1 \leq k \leq K}} & (5)\end{matrix}$

The constraint (5) limits the total subscription carried on allcandidate LSPs of the bypass bundle that satisfied the requirements.This constraint is relaxed when providing 100% protection is infeasible(i.e., the = becomes <= and the objective function is altered tomaximize the bandwidth protection percentage).

z_(q) ^(k)≧0,∀q,1≦q≦Q_(k),∀k,1≦k≦K  (6)

The bound (6) specifies that each candidate LSP carries non-negativeflow.

The hop and delay constraints have been captured by filtering thecandidate LSPs in the path formulation. This simplifies the mathprogramming model significantly, as compared to prior art arc-flowformulations, in which these constraints are much more difficult tomodel.

MPLS router implementation includes a parameter defining a maximumnumber of bypass LSPs, which is used to limit the number of parallelbypass LSPs protecting the same route. Considering this parameter in theFRR design problem will change the above linear programming (LP)formulation into an integer LP (ILP) problem. This is anon-deterministic polynomial (NP) problem.

Let variable y_(pl) ^(k) equal 1 if the p-th candidate LSP of the bypassbundle k is used in the solution, or 0 otherwise. Let p^(max) denote themaximum number of bypass LSPs allowed. The extra formulation to considerthis constraint is:

$\begin{matrix}{{z_{p}^{k} \leq {My}_{p}^{k}},{\forall p},{1 \leq p \leq Q^{k}},{\forall k},{1 \leq k \leq K}} & (7) \\{{{\sum\limits_{p = 1}^{Q^{k}}y_{p}^{k}} \leq p^{\max}},{\forall k},{1 \leq k \leq K}} & (8) \\{y_{p}^{k} = {0\mspace{14mu} {or}\mspace{14mu} 1}} & (9)\end{matrix}$

The path-flow formulation first computes a set of candidate bypass LSPs,and then creates a linear programming model, which may be solved usingexisting tools such as lp_solve. However, when the integer constraints(7) to (9) are considered in the model, the path formulation becomes alarge scale Integer Linear Program (ILP) problem. It has a large numberof columns, each one for a decision variable. Column generation is aknown algorithm to solve such path-flow formulations of themulticommodity flow problem.

Reducing Spare Subscribed Bandwidth

As noted above for node protection, the spare link subscribed bandwidthvalue of a given link is not simply the aggregated backup bandwidth ofits contained bypass LSPs. Since the backup bandwidth of bypass LSPs isan estimated upper bound of the actual RSVP load over the protectedroutes, the link spare subscribed bandwidth could be reduced whenmultiple bypass LSPs are routed over a link when they also haveoverlapped links on the protected route(s). A simple example is given inFIG. 3. It is not very difficult to compute that the spare subscribedbandwidth on link R2-R3, s₂₃=20 kbps, not 30. However, if there are morethan two bypass LSPs for a node facility FRR problem, the computation ofspare subscribed bandwidth becomes very complicated.

A more complicated example is presented in FIG. 4, in which theprotected network facility is node R1. The routes of four bypass LSPsand their associated protected routes are presented in Table 1, whereeach column represents a link (between the numbered nodes), and each rowrepresents a bypass LSP. A value of 1 in the table means the route ofbypass LSP of that row (or its protected route) will use the link ofthat column. All links ending at R1 (i.e., the first five columns) willonly be used by the protected routes. The links in the last four columnscarry the bypass LSPs. The last row shows the link spare subscribedbandwidth s_(l).

TABLE 1 Link Usage of Bypass LSPs and the Routes They Protect 1-2 1-31-4 1-5 1-6 2-3 2-5 3-4 4-6 bLSP1 1 1 1 1 bLSP2 1 1 1 1 1 bLSP3 1 1 1 11 bLSP4 1 1 1 1 S_(l) 30 16 35 15

Let d_(k) be the possible carried bandwidth on bypass LSP k,k=1, . . .,4. The upper bound of this value is the minimum link RSVP bandwidth onthe protected route of this bypass LSP. We call this bottleneckbandwidth. The value in d_(k) can be a value smaller than thisbottleneck bandwidth under certain situations, such as the one describedbelow.

Let r_(l)=r_(ij) be the RSVP bandwidth of link l,l=(i, j)εE. Lets_(l)=s_(ij) be the subscribed spare bandwidth on link l,l=(i, j)εE. Tofind the spare subscribed bandwidth on link R2-R3, the following stepsare performed:

1. Collect the bypass LSPs traversing link R2-R3, i.e., bLSP1, bLSP2,and bLSP3.

2. The spare link load on link R2-R3 is the largest possible value ofthe total backup bandwidth of its contained bypass LSPs:

s ₂₃=max(d ₁ +d ₂ +d ₃)  (10)

3. Checking these three bypass LSPs in Table 1 for their overlappedlinks on their protected routes, the following constraints can be foundon columns “1-2” and “1-4”:

s.t.d ₁ +d ₃ ≦r ₁₂=14  (11)

d ₁ +d ₂ ≦r ₁₄=20  (12)

4. Meanwhile, each bypass LSP should protect the bottleneck bandwidthalong its protected route:

0≦d ₁≦min(r ₁₂ ,r ₁₄)=14  (13)

0≦d ₂≦min(r ₁₅ ,r ₁₄)=16  (14)

0≦d ₃≦min(r ₁₂ ,r ₁₆)=14  (15)

These constraints ensure that the spare subscribed bandwidth value in(10) is smaller than the simple accumulated approach, where the backupbandwidth is fixed conservatively at its upper bound—the bottleneck RSVPbandwidth along its protected route:

d _(k)=min(r _(ij),∀(i,j)εprotected route of bypass LSP k)

This formulation is a linear programming problem with the objectivefunction as (10) and constraints (11)-(15). The solution can be found bysolving this problem by hand: s₂₃=30 when the optimal solutions(d₁,d₂,d₃) are located on a line between (0,16,14) and (4,16,10).

For link R3-R4, using similar steps as just described, the following LPproblem is derived:

s ₃₄=max(d ₁ +d ₂ +d ₃ +d ₄)  (16)

s.t.d ₁ +d ₃ ≦r ₁₂=14  (17)

d ₁ +d ₂ ≦r ₁₄=20  (18)

d ₃ +d ₄ ≦r ₁₆=15  (19)

0≦d ₁≦min(r ₁₂ ,r ₁₄)=14  (20)

0≦d ₂≦min(r ₁₅ ,r ₁₄)=16  (21)

0≦d ₃≦min(r ₁₂ ,r ₁₆)=14  (22)

0≦d ₄≦min(r ₁₃ ,r ₁₆)=10  (23)

The optimal solution is s₃₄=35, when (d₁,d₂,d₃,d₄)=(4,16,10,5).

General LP Formulation to Reduce Spare Link Subscribed Bandwidth

In the above two examples, we assume bypass LSPs' routes are known. Therequired spare link subscribed bandwidth s_(l) on link l must becomputed. Next, we formulate the problem using a more abstract mathprogramming model so that it can be incorporated into the FRR designmodel. We define the following notations:

Let Θ denote the protected route-to-link incidence matrix. Its elementθ_(kl) is 1 if the protected route of bypass LSP k traverses link l, and0 otherwise. An example of this matrix is the first five columns ofTable 1 above.

Let Δ denote the bypass LSP route-to-link incidence matrix. Its elementδ_(kl) is 1 if bypass LSP k traverses link l, and 0 otherwise. Anexample of this matrix is the last four columns of Table 1 above.

Let the column vector d^(l) contain elements of the maximum possiblebackup bandwidth d_(k) ^(l) on bypass LSP k,1≦k≦K when these bandwidthscontribute to the maximum spare capacity s_(l) on link l.

Let the column vector r contain elements of the RSVP bandwidth r_(l) onlink l, where l=(i,j)εE or 1≦l≦L,L=|E|.

Let the column vector s contain elements of the spare subscribedbandwidth s_(l) on the link l, 1≦l≦L.

For a given link l, the formulation to find spare capacity s_(l) is:

$\begin{matrix}{\max\limits_{d^{l}}s_{l}} & (24) \\{{{subject}\mspace{14mu} {to}\text{:}\mspace{11mu} s_{l}} = {\sum\limits_{k = 1}^{K}{\delta_{kl}d_{k}^{l}}}} & (25)\end{matrix}$

The objective (24) is to minimize the spare subscribed bandwidth on linkl. The design variables are the possible carried bandwidth δ_(kl) onbypass LSP k for link l. The equation (25) computes the link sparesubscribed bandwidth by taking the maximum value of accumulatedbandwidth of all backup LSPs that traverse this link. Equations (24) and(25) generalize equations (10) and (16), respectively, in the previousexamples.

$\begin{matrix}{{{\sum\limits_{k = 1}^{K}{\theta_{kl}d_{k}^{l}}} \leq r_{j}},{\forall j},{1 \leq j \leq L}} & (26)\end{matrix}$

The constraint (26) applies to any set of bypass LSPs whose protectedroutes traverse the link j. The total carried backup bandwidth of thesebypass LSPs, computed on the left-hand side, does not exceed the linkRSVP bandwidth, r_(j), on the right-hand side. This constraintgeneralizes (11)-(12) and (17)-(19) in the previous examples.

θ_(kj)(d _(k) ^(l) −r _(j))≦0,∀k,1≦k≦K,∀j,1≦j≦E  (27)

θ_(kj)d_(k) ^(l)≦θ_(kj)r_(j)  (28)

≦r_(j),∀k,1≦k≦K,∀j,1≦j≦E  (29)

  (26)

The constraint (27) requires that the backup bandwidth of a bypass LSPdoes not exceed the bottleneck RSVP bandwidth on its protected route.This constraint generalizes (13)-(15) and (20)-(23) in the previousexamples. This constraint is not included in the model because it isweaker than the earlier constraint (26).

This model can be used to inspect existing bypass LSPs and theirprotected routes to evaluate whether they satisfy the bandwidthprotection requirements, and hence may join the candidate bypass LSPs inthe path-flow formulation FRR solution. During the optimization phase ofthe path-flow formulation (i.e., selecting bypass LSPs by allocatingbandwidth to them), constraints (25)-(26) must be incorporated. Thedesign variable d_(k) ^(l) is partitioned by x_(kp) ^(l) for eachcandidate path p of the protected route k. The variable x_(kq) ^(l) isnot only for a candidate path p of protected route k, but also for alink l whose spare subscribed bandwidth s_(l) must be determined.

The path-flow formulation of the design of bypass LSPs for FRR in a MPLSnetwork discussed herein may be implemented by discrete calculations, byspecialized software executing on a general-purpose computer ordedicated network monitoring/optimization workstation, or by anycombination of software, dedicated hardware, firmware, or the like, asknown in the computing arts. In one exemplary embodiment, the design andoptimization of bypass LSPs for FRR is implemented as part of a networkanalysis and optimization software program, such as the OPNET SP GuruRelease 12.0, available from OPNET Technologies, Inc.

Input to such a software program—network topology, network facilitycapabilities, facilities to be protected, network constraints to applyto bypass bundles, and the like—may be obtained by the program in avariety of ways, as known in the programming arts. For example, networktopology may be read from a file or obtained by an analysis of an actualnetwork, as represented in any known form. Facilities to be protectedand constraints to apply to the path-flow FRR formulation may beobtained interactively from a user, such as via user-selectable optionsin a user interface element such as a window. FRR bypass bundlesgenerated may be output as graphs, listings of network elements, or inany other format, as known in the art.

As used herein, a “candidate bypass LSP” is an MPLS Label-Switched Pathbetween a PLR and MP of a network facility to be protected, that meetsall applied network constraints and additionally has an explicit routedefined from the PLR to the MP. As used herein, a “bypass LSP” is an LSPselected from among the set of candidate bypass LSPs by allocatingbandwidth to the bypass LSP. Two or more parallel backup LSPs thatprotect the same facility form a “bypass bundle.”

Although the present invention has been described herein with respect toparticular features, aspects and embodiments thereof, it will beapparent that numerous variations, modifications, and other embodimentsare possible within the broad scope of the present invention, andaccordingly, all variations, modifications and embodiments are to beregarded as being within the scope of the invention. The presentembodiments are therefore to be construed in all aspects as illustrativeand not restrictive and all changes coming within the meaning andequivalency range of the appended claims are intended to be embracedtherein.

1. A method of defining Fast Reroute (FRR) bypass tunnels on a Multi-Protocol Label Switching (MPLS) network using a path-flow formulation, comprising: specifying a network facility to protect; computing a plurality of candidate bypass Label-Switched Paths (LSP) that satisfy predetermined path and bandwidth constraints and have explicit routes, to carry traffic flows in the event of a failure of a protected facility; and selecting from among the candidate bypass LSPs one or more bypass LSPs by allocating protection bandwidth to the bypass LSPs.
 2. The method of claim 1 wherein selecting from among the candidate bypass LSPs one or more bypass LSPs by allocating protection bandwidth to the bypass LSPs comprises formulating and solving a linear programming (LP) problem on the set of candidate bypass LSPs with the protection bandwidth to be allocated to the bypass LSPs being a decision variable.
 3. The method of claim 2 wherein selecting bypass LSPs by allocating bandwidth to them further comprises specifying an integer maximum number of bypass LSPs for a protected facility, and formulating and solving an integer linear programming (ILP) problem on the candidate bypass LSPs.
 4. The method of claim 1 further comprising: inspecting previously defined bypass LSPs protecting the selected facilities by applying the predetermined path and bandwidth constraints to the existing bypass LSPs; repairing the existing bypass LSPs to conform to the predetermined path and bandwidth constraints; and adding the repaired, existing bypass LSPs to the plurality of candidate bypass LSPs prior to selecting bypass LSPs from among the candidate bypass LSPs.
 5. The method of claim 1 wherein computing a plurality of candidate bypass LSPs comprises: determining all Point of Local Repair (PLR) and Merge Point (MP) routers of the facility to be protected; and for each PLR/MP pair, determining the protected route bandwidth and the bottleneck RSVP bandwidth; creating a bypass bundle from the PLR to the MP; associating the protected route with the bypass bundle; assigning backup bandwidth, based on the bottleneck RSVP bandwidth; and associating the bypass bundle with the PLR interface.
 6. The method of claim 1 wherein the predetermined path constraints include a maximum number of hops.
 7. The method of claim 1 wherein the predetermined path constraints include a maximum increase in the number of hops.
 8. The method of claim 1 wherein the predetermined path constraints include a maximum delay.
 9. The method of claim 1 wherein the predetermined path constraints include a maximum delay increase.
 10. The method of claim 1 wherein the predetermined path constraints include a diversity constraint that each bypass LSP be disjoint of the facility it protects.
 11. The method of claim 10 wherein the predetermined path constraints include constraints derived from a shared risk group definition that could impact the diversity constraint between the bypass LSPs and the protected facility.
 12. The method of claim 1 wherein the predetermined path constraints include a minimum bandwidth for each bypass LSP.
 13. The method of claim 1 wherein the predetermined path constraints include a limit on the number of parallel bypass LSPs that protect the same facility.
 14. The method of claim 1 wherein the predetermined path constraints include taboo links that may not be used in bypass LSPs.
 15. The method of claim 1 wherein the predetermined path constraints include constraints derived from the MPLS capability on network facilities.
 16. The method of claim 1 wherein the predetermined path constraints include constraints derived from the RSVP capability on network facilities.
 17. The method of claim 1 wherein the predetermined path constraints include constraints derived from the IP routing capability on network facilities.
 18. The method of claim 1 wherein the predetermined path constraints include constraints derived from resource bits colored on each interface of a link for MPLS traffic engineering purposes.
 19. The method of claim 1 wherein one predetermined bandwidth constraint is the link spare capacity that can be used for any bypass LSP.
 20. The method of claim 19 wherein the link spare capacity that can be used for any bypass LSP is the link physical bandwidth minus the RSVP maximum reservable bandwidth.
 21. The method of claim 1 wherein one predetermined bandwidth constraint is the bandwidth pool of the facility to be protected.
 22. The method of claim 1 wherein allocating protection bandwidth to the bypass LSPs comprising allocating to a first bypass LSP on a given link, less bandwidth than the RSVP maximum of the corresponding protected route if a second bypass LSP also traversing the link shares a link on the protected route with the first bypass LSP.
 23. A computer readable medium including one or more computer programs operative to cause a computer to define Fast Reroute (FRR) bypass Label-Switched Paths (LSP) for a Multi-Protocol Label Switching (MPLS) network using a path-flow formulation, the computer programs operative to cause the computer to perform the steps of: receiving network topology information; receiving identification of a network facility to protect; receiving predetermined path and bandwidth constraints; computing a plurality of candidate bypass LSPs that satisfy the predetermined path and bandwidth constraints and have explicit routes, to carry traffic flows in the event of a failure of a protected facility; selecting from among the candidate bypass LSPs one or more bypass LSPs by allocating protection bandwidth to the bypass LSPs; and outputting the bypass LSPs.
 24. The computer readable medium of claim 23 wherein the computer programs are further operative to cause the computer to perform the steps of: receiving identification of previously defined bypass LSPs protecting the selected facilities; inspecting the existing bypass LSPs by applying the predetermined path and bandwidth constraints to the existing bypass LSPs; repairing the existing bypass LSPs to conform to the predetermined path and bandwidth constraints; and adding the repaired, existing bypass LSPs to the plurality of candidate bypass LSPs prior to selecting bypass LSPs from among the candidate bypass LSPs.
 25. The computer readable medium of claim 23 wherein computing a plurality of candidate bypass LSPs that satisfy the predetermined path and bandwidth constraints comprises: determining all Point of Local Repair (PLR) and Merge Point (MP) routers of the facility to be protected; and for each PLR/MP pair, determining the protected route bandwidth and the bottleneck RSVP bandwidth; creating a bypass bundle from the PLR to the MP; associating the protected route with the bypass bundle; assigning backup bandwidth, based on the bottleneck RSVP bandwidth; and associating the bypass bundle with the PLR interface.
 26. A method of minimizing the link spare subscription of a network link in a Multi-Protocol Label Switching (MPLS) network implementing Fast Reroute (FRR) to protect a node, comprising: defining one or more bypass Label-Switched Paths (LSP) to carry traffic around the node in the event of a node failure, the backup LSPs traversing the link; and if the link contains at least two bypass Label-Switched Paths (LSP) and the bypass LSPs share one or more links in the network routes they protect, reducing the aggregate protection bandwidth of the bypass LSPs such that each bypass LSP protects the bottleneck bandwidth along its protected route and such that the combined bandwidth of each bypass LSP that shares a protected route link is less than or equal to the minimum RSVP bandwidth of the shared link.
 27. The method of claim 26 wherein reducing the aggregate protection bandwidth of the bypass LSPs comprises formulating and solving a linear programming problem with an objective function that the spare link load is the largest possible value of the total backup bandwidth of its contained bypass LSPs, subject to the constraints: the sum of protection bandwidths of each bypass LSP that shares a protected route link is less than or equal to the minimum RSVP bandwidth of the shared protected route link; and each bypass LSP has at least the bandwidth of the minimum RSVP bandwidth of any link in its protected route. 